Dynamic typesetting

ABSTRACT

A computer implemented method for providing a dynamic typesetting package. The method receives a request from a user for a typesetting package, and the typesetting package includes one or more font, and one or more rendering rules for defining typesetting for various elements of content across layout contexts. In response to a requested typesetting package, the method provides a link to the user. The link references the requested typesetting package. The method matches at least a portion of the elements of the content to one or more parameters in the one or more rendering rules. The one or more rendering rules, in response to an execution by a computerized device having a display, the content is dynamically typeset for the display.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation application of U.S. nonprovisionalapplication Ser. No. 16/579,822, filed on Sep. 23, 2019, whosedisclosure is incorporated by reference in its entirety herein.

TECHNICAL FIELD

Embodiments discussed herein generally relate to typesettingprovisioning in web design.

BACKGROUND

Developers and programmers design and code web pages and their contentsfor a variety of platforms and devices. Websites are made to scale to avariety of sizes. This enables them to work on phones, tablets, anddesktop computers. Control over the size of typographic elements, suchas headings and paragraphs, lack design and development solutions; assuch, programmers and designers need to create complex typographic rulesso that text looks good in every context a typographic element is used.

Developers and programmers need to write a significant amount of code tomanage typographic variations within layouts because each context inwhich text might appear needs to be considered and treated. Thesecontext variations might be within a side bar vs in the main section oftext and also how those layouts change on different devices. Oftentypesetting is simplified to reduce the amount of code needed resultingin less interesting designs.

Writing his or her own code for these changes has been preferred, butwriting appropriate code is still challenging for a small business ownerwho may have elementary knowledge or ability or those who may havelearned a crash course on coding for the web. There are drag and dropweb design vendors or hosts that provide design templates for the users,but the users sometimes are limited to the kind of templates provided.In addition, some of the templates lack ability to accommodate to thedifferent display sizes; they the information to provide to the browserto adjust the page content accordingly.

Therefore, embodiments attempt to create a technical solution to addressthe deficiencies of the challenges above.

SUMMARY

Embodiments create a technical solution to the above challenges bycreating an easy to use tool to enable users who wish to build a webcontent to dynamically tailored to different displays without the needto write the code to accomplish themselves. In addition, aspects ofembodiments may further provide a complete typesetting configuration sothat with the code above, the web content may be rendered appropriatelyfor the different devices.

BRIEF DESCRIPTION OF THE DRAWINGS

Persons of ordinary skill in the art may appreciate that elements in thefigures are illustrated for simplicity and clarity so not allconnections and options have been shown. For example, common butwell-understood elements that are useful or necessary in a commerciallyfeasible embodiment may often not be depicted in order to facilitate aless obstructed view of these various embodiments of the presentdisclosure. It may be further appreciated that certain actions and/orsteps may be described or depicted in a particular order of occurrencewhile those skilled in the art may understand that such specificity withrespect to sequence is not actually required. It may also be understoodthat the terms and expressions used herein may be defined with respectto their corresponding respective areas of inquiry and study exceptwhere specific meanings have otherwise been set forth herein.

FIGS. 1A to 1B are diagrams illustrating a prior art approach andlimitations to rendering web content.

FIGS. 2A to 2B are diagrams illustrating dynamic typesetting accordingto one embodiment.

FIGS. 3A to 3C are diagrams illustrating additional examples accordingto one embodiment.

FIG. 4 is a flow chart illustrating a method according to oneembodiment.

FIG. 5 is a diagram illustrating a portable computing device accordingto one embodiment.

FIG. 6 is a diagram illustrating a computing device according to oneembodiment.

FIG. 7 is a diagram illustrating typesetting packages according to oneembodiment.

FIG. 8 is a diagram illustrating exemplary CSS instructions matching aweb content according to one embodiment.

FIGS. 9A to 9F are screenshots of contents after packages are appliedaccording to one embodiment.

DETAILED DESCRIPTION

Embodiments may now be described more fully with reference to theaccompanying drawings, which form a part hereof, and which show, by wayof illustration, specific exemplary embodiments which may be practiced.These illustrations and exemplary embodiments may be presented with theunderstanding that the present disclosure is an exemplification of theprinciples of one or more embodiments and may not be intended to limitany one of the embodiments illustrated. Embodiments may be embodied inmany different forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided sothat this disclosure may be thorough and complete, and may fully conveythe scope of embodiments to those skilled in the art. Among otherthings, the present invention may be embodied as methods, systems,computer readable media, apparatuses, or devices. Accordingly, thepresent invention may take the form of an entirely hardware embodiment,an entirely software embodiment, or an embodiment combining software andhardware aspects. The following detailed description may, therefore, notto be taken in a limiting sense.

Embodiments may create a system for conveniently create web contentsthat dynamically adjust to any hardware display medium. The contents nolonger rely on the width determination of a browser or a renderingengine. Aspects of embodiments create a package of rules thatdynamically adjust the contents as envisioned by the creators regardlessof what kind of devices that the contents appear on.

To further illustrate aspects of embodiments, the following terms may beused throughout the disclosure:

A typeface or type may be referred to letters, characters, symbols,and/or glyphs of a similar style across one or more languages;

A font may be referred to as a delivery mechanism for type. In oneexample, fonts may be but not limited to OpenType, TrueType, WOFF, orWOFF2 file formats and have historically been delivered as cast metaland photographic disks before the days of computer with a display;

A typeset or typesetting may be referred to as how type is used on apage, layout, screen, and/or design. This includes but is not limited tothe size, weight, style, line-height, letter spacing (tracking) and wordspacing;

Typography may be referred to as an overall practice and outcome oftypesetting, lettering, calligraphy, and general application of type;

An element may be referred to as any piece of text with a unique styleor function. For example, this includes but is not limited to headlines,subheadlines, section headlines, paragraphs, pullquotes, labels, lists,and captions;

A context or typesetting context may be referred to as variations thatmay indicate the width available to text, but may also include height,viewport or browser width, ambient light, etc.; and

A package may be referred to as a collection of instructions that definetypesetting for various elements across contexts.

As a further illustration, referring to FIG. 1A, a diagram showing asystem 100 demonstrates existing approaches to render or display a webcontent. The system 100 may include a computing device 102 whichincludes a browser 104 and a display 106. The browser 104 displays a webcontent 108. The web content 108 includes elements 112 and 114. The webcontent 108 also includes other elements and includes scripts. Inanother embodiment, the web content 108, before rendered by the browser104 or a rendering engine, may be written in a markup language withspecific syntax rules. For example, one such markup language may be ahypertext markup language (HTML). The HTML coded content may include acombination of tags (e.g., <body>, <header>, <tr>, etc.) and attributesand values associated with the tags (e.g., <font size: “3”> or <pstyle=“font-size: 20px”>). As such, the web content, before rendered,may be written in a series of tag declarations with attributes, as wellas content (e.g., texts, images, etc.), to be rendered.

However, while the browser 104 determines sizes and parameters of thedisplay 106, the browser 104 fails to execute content size informationand recognize any content information in relationship to the display orbrowser, such as how elements 112 and 114 may be displayed on thedisplay 106 or browser 104. For example, referring to FIG. 1A, a context122 may define a width of the content 108. However, the context 124(e.g., with a smaller width than that of the context 122) may notdisplay the complete information of the content 108.

Referring now to FIG. 2A, a diagram may illustrate a system 200according to one embodiment. The system 200 may include a similarconfiguration as in FIG. 1A, such as a computing device 202 having abrowser 204 installed thereon. The computing device 202 may also includea display 206 so that the computing device 202 may display a web content212 having one or more elements. In one embodiment, the web content 212may be a content that includes one or more elements therein. In anotherexample, the content 212 may be a content presented on a web browser. Ina further example, the content 212 may be rendered or displayed withinan app that is installed by a mobile device, such as the one shown inFIG. 5.

One of the differences between the prior art and aspects of embodimentsis that aspects of embodiments incorporate a package 208 having a link214 that references a package that includes a set of rules 210incorporated therein to dictate how the elements of the web content 212are to be rendered. The browser 204 is configured to execute the link214, which references the package 208 and the set of rules 210, and thatthe rules 210 remove the need for the browser 204 to provide parameterinformation of the display 206.

For example, the link 214 may be expressed as below:

“<script src=″https://cdn.typetura.com/typetura.js″></script> <linkhref=″https://cdn.typetura.com/magazine-moderne/typetura.css″>”

In another embodiment, the link 214 may be added to the content 212 inany part as the browser 204 or a rendering engine may identify andexecute the link 214. Moreover, the link 214 references the package 208,and the name of the link 214 may match that of the name of the package208.

In another embodiment, for example, the set of rules 210 may include aset of JAVASCRIPT instructions that identify contexts of the elements ofthe web content 212. For example, the JAVASCRIPT may include thefollowing code to identify a width parameter of the display 206, as wellas various resolution ratio and display refresh rates.

For example, JAVASCRIPT according to aspects of embodiments may includeone or more of the following instructions:

function getContext( ) { el.forEach(element => {element.style.setProperty(‘--context’, element.offsetWidth) }) }getContext( ) window.onresize = getContext

The set of rules 210 may further include a set of cascading style sheets(CSS) instructions that may set the rules for each element type and howthey should respond or rendered to the context identified by theJAVASCRIPT instructions.

For example, CSS according to aspects of embodiments may include one ormore of the following instructions:

The CSS needs to first associate itself with the context provided by theJAVASCRIPT with a function like this:

*{animation: var(--key) 1s var(--ease) 1 calc(−1s * var(--context) /var(--max)) paused both;}

Then the this association can be used to style an element across thiscontext similar to this:

h1 { --key: h1; --max: 1000; } @keyframes h1 { 0% { font-size: 16px; }100% { font-size: 72px; } }

To further illustrate aspects of the invention, FIG. 7 illustrates oneor more packages according to one embodiment. In one embodiment, thepackages 702, 704, 706, and 708 may be presented on a website or a pageof a website for the user to select. In another embodiment, the packages702, 704, 706, and 708 may be presented to the user on a publisher or aweb host so that the end user of the publisher or the web host mayselect.

To further illustrate aspects of the invention, FIG. 2B may illustratediagrams showing how embodiments of the invention differ from those ofthe prior art, such as shown in FIG. 1B. For example, a first diagram230 include lines 222 and 224 define a width of a context (e.g., displaywindow or visible window of a browser), which is determined by the setof JAVASCRIPT 210. The content 212, which may include an element 226 asa headline text. The element 226 may be configured by the CSSinstructions to render at a given size across the width of the context.In a diagram 232, on the other hand, a new context has been identifiedbased on lines 228 and 230. Unlike FIG. 1B, aspects of embodiments may,after the browser interprets or executes the set of CSS instructions,render the same element 226 at a different size while still maintainingthe width of the element 226 being across the width of the context.

FIGS. 3A to 3C further illustrate exemplary embodiments of theinvention. FIG. 3A illustrates one set of arranges of the set of rulesof JAVASCRIPT and CSS in the package. For example, suppose a user maywish to publish or post content 302 with elements 304 and 306; theelement 304 being designated as a headline whereas the element 306 maybe designated as a body. The package provided by aspects of embodimentsmay define the headline to have a certain size of font and styles suchas bold, underline, italics, etc. The body may be further defined toinclude a certain size of font and styles such as bold, underline,italics, etc., as well as margin from the left and right edges of thedisplay. As such, in FIG. 3A, under a larger display context 310, theelements 304 and 306 may be rendered in such a first layout. In a tabletsize display context 320, for example, the elements 304 and 306 arereduced in size according to the CSS rules. Further, in a smartphonedisplay context 330, the elements 304 and 306 are further modified to besuitable for the given context. Note that the margin of the element 306may be slightly different in the context 330 from the other contexts dueto the size of the font, etc.

Referring now to FIG. 3B, another layout 312 is illustrated todemonstrate aspects of embodiments. In this example, similar to that ofFIG. 3A, there are elements 304 and 306. However, FIG. 3B may illustratehow elements 304 and 306 are configured with the introduction of a newelement 308—a side bar graphics or panel—is introduced as part of thecontent 302. As such, in the context 310, the element 308 may include afirst width A. However, in the context 320, the elements 304 and 306 mayfurther update its width when the element 308 is introduced and that theelement 308 may now have a different width B. Further, in the context330, the element 308 is no longer visible and is absent in thisparticular context 330. In other words, with the CSS instructions, theuser may dictate how an element is rendered as well as whether theelement is rendered in a given context at all.

Furthermore, FIG. 3C may illustrate yet another layout 314 according toone embodiment. For example, as shown in the context 310, the content302 again may include elements 304 and 306. However, the content 302 maynow include a secondary headlines 322 and 324 and their respective body326 and 328. Furthermore, the content 302 may include a side column withthe secondary headlines with its organization thereof. For example,secondary headlines 332, 334, and 340 may be of the same size font andstyle while their body contents 334, 338 and 342 are of another fontsize and style.

When it comes to the context 320, on the other hand, the side columncontents (e.g., 332, 334, 336, 338, 340, and 342) are no longer visibleor rendered for viewers. Rather, only 304, 306, 322, 326, 328, and 324are shown (while 322 and 324 are in side-by-side column). Moreover, theelement 304 is still in a larger font size than that of the element 322due to the package rules (e.g., CSS instructions). Furthermore, thepackage ensure the typesetting configurations for 304, 322, and 328 areaccurate and are transformed from the context 310 to context 320. Forexample, the size for the headline 304 in the context 310 may be thesame as in the context 320 proportionally. The end user does not need torely on the browser to adjust correctly for the context 320. In anotherembodiment, the headlines 332, 334 and 340 along with their bodycontents 334, 338 and 342 may be found in later section of the content302 so that the viewers may need to scroll the page.

Yet in another embodiment, in the context 330, the elements 304 and 322are now in the same size and font as headlines.

As such, with the CSS instructions, aspects of embodiments automaticallyenable dynamic typesetting to any given content according to the contextwithout the need to wait for the browser or a rendering machine on thedisplaying device to provide the desirable result—as configured by thecontent author—to be viewed by viewers of the content.

Further examples are shown in FIGS. 9A to 9F. For example, FIGS. 9A and9B illustrate the rendered content after the package 702 is applied;FIGS. 9C and 9D illustrate the rendered content after the package 704 isused; and FIGS. 9E and 9F illustrate the rendered content after thepackage 706 is applied.

Referring now to FIG. 4, a flow chart illustrates a method according toone embodiment. At 402, a system (e.g., system 200) may receive arequest 414 from a user 412 for a typesetting package. In oneembodiment, the typesetting package (e.g., typesetting packages 1, 2 and3) includes one or more font typeface and one or more rendering rules(e.g., JAVASCRIPT and CSS instructions) for defining a typesetting forvarious elements of a content from a user across contexts (e.g.,contexts 310, 320, and 330). At 404, in response to a requestedtypesetting package, the system may provide a link 410 to the user 412.In one example, the link 410 may reference the requested typesettingpackage such as providing a link to a storage area or an address of adatabase storing the typesetting package. At 406, the system may matchat least a portion of the elements of the content to one or moreparameters in the one or more rendering rules. For example, the CSSinstructions in the typesetting package may identify the differentelements such as those shown in FIGS. 3A to 3C. For example, the user412 may select the elements manually and update the CSS instructionsbefore the content is rendered. In another embodiment, the elements maybe automatically identified or parsed by other rules, instructions orengines that may be packaged in the typesetting package. In yet anotherembodiment, the typesetting package may call relevant functions in thesystem 100 to perform the parsing and identifying.

To further illustrate this feature, FIG. 8 is a screenshot illustratingpackages according to one embodiment. For example, a package having a“primary headline” as one of a typesetting configuration for a headlinehaving a particular sized font and font typeface, as shown in 810. Thepackage may therefore include a set of rules that may identify contentand transform the content according to the size or typeface of the“primary headline”. With such typesetting defined by the package,aspects of embodiments may identify the web content and match in thecontent and replace an equivalent headline in the web content. Forexample, suppose the end user may define a set of style setting for aheadline text as “headline #1”. Once the end user selects the package asshown in FIG. 8, aspects of embodiments may match “headline #1” to“primary headline” in the package. In response to the matching, thecontent of the end user may be updated to include “primary headline” in802 so that once the web content is presented to the browser or therendering engine, the proper typesetting for the “primary headline” willbe rendered.

Similarly, another example of “primary subheadline” 812, with a smallerfont size positioned below or under the primary headline 810.Accordingly, the end user's content code may be updated in 804 to“primary-subheadline.” Furthermore, a meta information style 814 mayalso update the web content to “meta” 806.

At 408, the one or more rendering rules, in response to an execution bya computerized device (e.g., system 200) having a display (e.g., display216), dynamically configure the content to the typesetting for thedisplay, such as those in FIG. 3C.

FIG. 5 may be a high level illustration of a portable computing device801 communicating with a remote computing device 841 in FIG. 6 but theapplication may be stored and accessed in a variety of ways. Inaddition, the application may be obtained in a variety of ways such asfrom an app store, from a web site, from a store Wi-Fi system, etc.There may be various versions of the application to take advantage ofthe benefits of different computing devices, different languages anddifferent API platforms.

In one embodiment, a portable computing device 801 may be a mobiledevice 108 that operates using a portable power source 855 such as abattery. The portable computing device 801 may also have a display 802which may or may not be a touch sensitive display. More specifically,the display 802 may have a capacitance sensor, for example, that may beused to provide input data to the portable computing device 801. Inother embodiments, an input pad 804 such as arrows, scroll wheels,keyboards, etc., may be used to provide inputs to the portable computingdevice 801. In addition, the portable computing device 801 may have amicrophone 806 which may accept and store verbal data, a camera 808 toaccept images and a speaker 810 to communicate sounds.

The portable computing device 801 may be able to communicate with acomputing device 841 or a plurality of computing devices 841 that makeup a cloud of computing devices 811. The portable computing device 801may be able to communicate in a variety of ways. In some embodiments,the communication may be wired such as through an Ethernet cable, a USBcable or RJ6 cable. In other embodiments, the communication may bewireless such as through Wi-Fi® (802.11 standard), BLUETOOTH, cellularcommunication or near field communication devices. The communication maybe direct to the computing device 841 or may be through a communicationnetwork 102 such as cellular service, through the Internet, through aprivate network, through BLUETOOTH, etc., FIG. 5 may be a simplifiedillustration of the physical elements that make up a portable computingdevice 801 and FIG. 6 may be a simplified illustration of the physicalelements that make up a server type computing device 841.

FIG. 5 may be a sample portable computing device 801 that is physicallyconfigured according to be part of the system. The portable computingdevice 801 may have a processor 850 that is physically configuredaccording to computer executable instructions. It may have a portablepower supply 855 such as a battery which may be rechargeable. It mayalso have a sound and video module 860 which assists in displaying videoand sound and may turn off when not in use to conserve power and batterylife. The portable computing device 801 may also have non-volatilememory 865 and volatile memory 870. It may have GPS capabilities 880that may be a separate circuit or may be part of the processor 850.There also may be an input/output bus 875 that shuttles data to and fromthe various user input devices such as the microphone 806, the camera808 and other inputs, such as the input pad 804, the display 802, andthe speakers 810, etc., It also may control of communicating with thenetworks, either through wireless or wired devices. Of course, this isjust one embodiment of the portable computing device 801 and the numberand types of portable computing devices 801 is limited only by theimagination.

As a result of the system, better information may be provided to a userat a point of sale. The information may be user specific and may berequired to be over a threshold of relevance. As a result, users maymake better informed decisions. The system is more than just speeding aprocess but uses a computing system to achieve a better outcome.

The physical elements that make up the remote computing device 841 maybe further illustrated in FIG. 6. At a high level, the computing device841 may include a digital storage such as a magnetic disk, an opticaldisk, flash storage, non-volatile storage, etc. Structured data may bestored in the digital storage such as in a database. The server 841 mayhave a processor 1000 that is physically configured according tocomputer executable instructions. It may also have a sound and videomodule 1005 which assists in displaying video and sound and may turn offwhen not in use to conserve power and battery life. The server 841 mayalso have volatile memory 1010 and non-volatile memory 1015.

The database 1025 may be stored in the memory 1010 or 1015 or may beseparate. The database 1025 may also be part of a cloud of computingdevice 841 and may be stored in a distributed manner across a pluralityof computing devices 841. There also may be an input/output bus 1020that shuttles data to and from the various user input devices such asthe microphone 806, the camera 808, the inputs such as the input pad804, the display 802, and the speakers 810, etc., The input/output bus1020 also may control of communicating with the networks, either throughwireless or wired devices. In some embodiments, the application may beon the local computing device 801 and in other embodiments, theapplication may be remote 841. Of course, this is just one embodiment ofthe server 841 and the number and types of portable computing devices841 is limited only by the imagination.

The user devices, computers and servers described herein may becomputers that may have, among other elements, a microprocessor (such asfrom the Intel® Corporation, AMD®, ARM®, Qualcomm®, or MediaTek®);volatile and non-volatile memory; one or more mass storage devices(e.g., a hard drive); various user input devices, such as a mouse, akeyboard, or a microphone; and a video display system. The user devices,computers and servers described herein may be running on any one of manyoperating systems including, but not limited to WINDOWS®, UNIX®, LINUX®,MAC® OS®, iOS®, or Android®. It is contemplated, however, that anysuitable operating system may be used for the present invention. Theservers may be a cluster of web servers, which may each be LINUX® basedand supported by a load balancer that decides which of the cluster ofweb servers should process a request based upon the current request-loadof the available server(s).

The user devices, computers and servers described herein may communicatevia networks, including the Internet, wide area network (WAN), localarea network (LAN), Wi-Fi®, other computer networks (now known orinvented in the future), and/or any combination of the foregoing. Itshould be understood by those of ordinary skill in the art having thepresent specification, drawings, and claims before them that networksmay connect the various components over any combination of wired andwireless conduits, including copper, fiber optic, microwaves, and otherforms of radio frequency, electrical and/or optical communicationtechniques. It should also be understood that any network may beconnected to any other network in a different manner. Theinterconnections between computers and servers in system are examples.Any device described herein may communicate with any other device viaone or more networks.

The example embodiments may include additional devices and networksbeyond those shown. Further, the functionality described as beingperformed by one device may be distributed and performed by two or moredevices. Multiple devices may also be combined into a single device,which may perform the functionality of the combined devices.

The various participants and elements described herein may operate oneor more computer apparatuses to facilitate the functions describedherein. Any of the elements in the above-described Figures, includingany servers, user devices, or databases, may use any suitable number ofsubsystems to facilitate the functions described herein.

Any of the software components or functions described in thisapplication, may be implemented as software code or computer readableinstructions that may be executed by at least one processor using anysuitable computer language such as, for example, Java, C++, or Perlusing, for example, conventional or object-oriented techniques.

The software code may be stored as a series of instructions or commandson a non-transitory computer readable medium, such as a random accessmemory (RAM), a read only memory (ROM), a magnetic medium such as ahard-drive or a floppy disk, or an optical medium such as a CD-ROM. Anysuch computer readable medium may reside on or within a singlecomputational apparatus and may be present on or within differentcomputational apparatuses within a system or network.

It may be understood that the present invention as described above maybe implemented in the form of control logic using computer software in amodular or integrated manner. Based on the disclosure and teachingsprovided herein, a person of ordinary skill in the art may know andappreciate other ways and/or methods to implement the present inventionusing hardware, software, or a combination of hardware and software.

The above description is illustrative and is not restrictive. Manyvariations of embodiments may become apparent to those skilled in theart upon review of the disclosure. The scope embodiments should,therefore, be determined not with reference to the above description,but instead should be determined with reference to the pending claimsalong with their full scope or equivalents.

One or more features from any embodiment may be combined with one ormore features of any other embodiment without departing from the scopeembodiments. A recitation of “a”, “an” or “the” is intended to mean “oneor more” unless specifically indicated to the contrary. Recitation of“and/or” is intended to represent the most inclusive sense of the termunless specifically indicated to the contrary.

One or more of the elements of the present system may be claimed asmeans for accomplishing a particular function. Where suchmeans-plus-function elements are used to describe certain elements of aclaimed system it may be understood by those of ordinary skill in theart having the present specification, figures and claims before them,that the corresponding structure includes a computer, processor, ormicroprocessor (as the case may be) programmed to perform theparticularly recited function using functionality found in a computerafter special programming and/or by implementing one or more algorithmsto achieve the recited functionality as recited in the claims or stepsdescribed above. As would be understood by those of ordinary skill inthe art that algorithm may be expressed within this disclosure as amathematical formula, a flow chart, a narrative, and/or in any othermanner that provides sufficient structure for those of ordinary skill inthe art to implement the recited process and its equivalents.

While the present disclosure may be embodied in many different forms,the drawings and discussion are presented with the understanding thatthe present disclosure is an exemplification of the principles of one ormore inventions and is not intended to limit any one embodiments to theembodiments illustrated.

The present disclosure provides a solution to the long-felt needdescribed above. In particular, the systems and methods overcomechallenges with traditional approaches of manual entry of data in orderto monitor and track application development. Aspects of embodimentscreate a data structure to represent code and applications so thatduring the lifecycle of the code, an administrator or manager may easilyidentify and score aspects of the application.

Further advantages and modifications of the above described system andmethod may readily occur to those skilled in the art.

The disclosure, in its broader aspects, is therefore not limited to thespecific details, representative system and methods, and illustrativeexamples shown and described above. Various modifications and variationsmay be made to the above specification without departing from the scopeor spirit of the present disclosure, and it is intended that the presentdisclosure covers all such modifications and variations provided theycome within the scope of the following claims and their equivalents.

What is claimed is:
 1. A computer implemented method for providing adynamic typesetting package comprising: receiving a request from a userfor a typesetting package to be served externally to contexts forrendering on a computerized device, the typesetting package comprisingone or more font and one or more rendering rules for defining atypesetting for various elements of a content from a user across thecontexts; said typesetting comprising configurations of layouts of theelements across the contexts; in response to a requested typesettingpackage, providing a link to the user, the link referencing therequested typesetting package; in response to the link being executed,matching at least a portion of the elements of the content to one ormore parameters in the one or more rendering rules; and wherein the oneor more rendering rules, in response to an execution by the computerizeddevice having a display context, dynamically configure and reorganizethe elements in accordance with the layouts of the typesetting andprovide progressive changes to the layouts in response to one of thefollowing: inputs from the user and the display context.
 2. The computerimplemented method of claim 1, wherein the content comprise a collectionof texts and graphics, said content are coded in a markup language. 3.The computer implemented method of claim 1, wherein providing the linkcomprises providing the link in response to a user action, wherein theuser action comprises obtaining the link and copying the link to anypart of the content.
 4. The computer implemented method of claim 1,wherein matching comprises matching in response to a user selection. 5.The computer implemented method of claim 4, wherein the user selectioncomprises a selection of a markup language format name.
 6. The computerimplemented method of claim 4, wherein the user selection comprises aname for a typesetting style.
 7. A system for providing a dynamictypesetting package comprising: a database for storing one or moretypesetting packages; a server configured to execute computer-executableinstructions for: receiving a request from a user for one of the one ormore typesetting packages to be served externally to contexts forrendering on a computerized device, each of the typesetting packagescomprising one or more font typeface and one or more rendering rules fordefining the typesetting for various elements of a content from a useracross contexts, said contexts comprising a set of parameters of adisplay context of the rendering device; said typesetting comprisingconfigurations of layouts of the elements across the contexts; inresponse to a requested typesetting package, providing acomputer-executable link to the user, the computer-executable linkreferencing the requested typesetting package; in response to the linkbeing executed, matching at least a portion of the elements of thecontent to one or more parameters in the one or more rendering rules;and wherein the one or more rendering rules, in response to an executionby the rendering device, dynamically configure the elements inaccordance with the layouts of the typesetting and provide progressivechanges to the layouts in response to one of the following: inputs fromthe user and the display context.
 8. The system of claim 7, wherein thecontent comprise a collection of texts and graphics, said content arecoded in a markup language with format declarations and the one or moreparameters for the format declarations.
 9. The system of claim 7,wherein the server is configured to provide the computer-executable linkin response to a user action, wherein the user action comprisesobtaining the computer-executable link and copying thecomputer-executable link to any part of the content.
 10. The system ofclaim 7, wherein the server is configured to match in response to a userselection.
 11. The system of claim 10, wherein the user selectioncomprises a selection of a markup language format name.
 12. The systemof claim 10, wherein the user selection comprises a name for atypesetting style.
 13. The system of claim 7, wherein the server isconfigured to match automatically in response to the computer-executablelink being provided to the content.
 14. The system of claim 7, whereinthe computer-executable link comprises a collection of texts andgraphics, said content are coded in a markup language.
 15. A tangiblenon-transitory computer readable medium stored thereoncomputer-executable instructions for providing a dynamic typesettingpackage, the computer-executable instructions comprising: receiving arequest from a user for a typesetting package to be served externally tocontexts for rendering on a computerized device, the typesetting packagecomprising one or more font and one or more rendering rules for defininga typesetting for various elements of a content from a user acrosscontexts, said contexts comprising a set of parameters of a displaycontext of the computerized device; said typesetting comprisingconfigurations of layouts of the elements across the contexts; inresponse to a requested typesetting package, providing a link to theuser, the link referencing the requested typesetting package; inresponse to the link being executed, matching at least a portion of theelements of the content to one or more parameters in the one or morerendering rules; and wherein the one or more rendering rules, inresponse to an execution by the computerized device having the displaycontext, dynamically configure the elements in accordance with thelayouts of the typesetting and provide progressive changes to thelayouts in response to one of the following: inputs from the user andthe display context.
 16. The computer implemented method of claim 15,wherein the content comprise a collection of texts and graphics, saidcontent are coded in a markup language with format declarations and theone or more parameters for the format declarations.
 17. The computerimplemented method of claim 15, wherein the link comprises a link to acascading style sheet and a scripting language file.
 18. The computerimplemented method of claim 15, wherein matching comprises matching inresponse to a user selection.
 19. The computer implemented method ofclaim 18, wherein the user selection comprises a selection of a markuplanguage format name.
 20. The computer implemented method of claim 18,wherein the user selection comprises a name for a typesetting style.